package com.studynotes.dev.tech.common.enums;

import com.studynotes.dev.tech.common.utils.CollectionUtil;
import lombok.AllArgsConstructor;
import lombok.Getter;

import java.util.Arrays;

/**
 * @author Liu XiaoJun
 * @description: 数据库类型枚举
 * @date 2025-11-07 16:18:38
 */
@Getter
@AllArgsConstructor
public enum DBTypeEnum {

    /**
     * 正常
     */
    MYSQL("0","MySQL"),
    /**
     * 删除
     */
    POSTGRESQL("1","Postgresql"),
    /**
     * 删除
     */
    DB2("2","DB2"),
    /**
     * 删除
     */
    ORACLE("3","Oracle");

    /**
     * 代码项
     */
    private final String code;

    /**
     * 名称
     */
    private final String name;

    /**
     * 获取枚举
     *
     * @param code 代码项
     * @return 枚举
     */
    public static DBTypeEnum of(String code) {
        return CollectionUtil.findFirst(Arrays.asList(values()), item -> item.getCode().equals(code));
    }

}
